package com.eCommerce.server.corebackend.dao;

import java.util.List;
import java.util.Set;


import com.eCommerce.corecontract.criteria.UserCriteria;
import com.eCommerce.corecontract.dto.UserDTO;
import com.eCommerce.corecontract.exception.EcommerceException;

public interface IUserDAO extends IDataAccessObject {
	void delete(UserDTO userDTO) throws EcommerceException;

	List find(UserCriteria userCriteria)
			throws EcommerceException;
	
	List findAll() throws EcommerceException;
	
	UserDTO findOne(UserDTO userDTO) throws EcommerceException;

	Long insert(UserDTO userDTO) throws EcommerceException;

	void update(UserDTO userDTO) throws EcommerceException;
	
	boolean checkLogin (String login, String password) throws EcommerceException;
	
	UserDTO getUser(String login) throws EcommerceException;
	 UserDTO getUserByEmail(String email) throws EcommerceException;
	
}
